Update vaadin.version to v25.2.0#146
Open
xdev-renovate wants to merge 1 commit into
Open
Conversation
6c1c9b9 to
ebeff02
Compare
ebeff02 to
b0cfdda
Compare
b0cfdda to
c43b1a4
Compare
c43b1a4 to
7f21fcf
Compare
7f21fcf to
b574532
Compare
b574532 to
0cdd897
Compare
14c040a to
b21263e
Compare
b21263e to
57a4ad9
Compare
57a4ad9 to
3cc4401
Compare
87d2b40 to
eef3bde
Compare
eef3bde to
10f5db8
Compare
7072849 to
ae7567b
Compare
ae7567b to
a64d437
Compare
9ea36c0 to
7e1e21e
Compare
e097322 to
c193ef0
Compare
c193ef0 to
5235ce4
Compare
5235ce4 to
97fcadb
Compare
97fcadb to
218fb2c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
25.1.5→25.2.025.1.5→25.2.0Release Notes
vaadin/platform (com.vaadin:vaadin-bom)
v25.2.0: Vaadin 25.2.0Compare Source
Upgrading · Docs · Get Started
New and Noteworthy Since Vaadin 25.1
Flow
Geolocation.getPosition(...)for one-shot reads,Geolocation.watchPosition(...)for continuous tracking exposed as a signal. Watches auto-stop on detach. Sealed result types (GeolocationPosition/GeolocationError, plusGeolocationPendingfor the watcher) make permission-denied, unavailable, and timeout exhaustive to handle. (Live demo)Clipboard.onClick(component), then.writeText(...),.writeText(field, ...), or.write(ClipboardContent.create().text(...).html(...)). Success/error callbacks available, and the per-gesture browser trust requirement is handled for you.UNKNOWN/UNSUPPORTED/NOT_FULLSCREEN/FULLSCREEN). Browser-initiated exit (e.g. the Esc key) is reflected in the signal, a single-component fullscreen is restored to its original DOM position on exit, and overlays keep working. Optional success/failure callbacks surface browser rejections.activeandavailabilitysignals plus typed error callbacks (unsupported, not-allowed, unknown), with an already-known-unsupported state reported without a wasted round-trip.SUPPORTED/UNSUPPORTED/UNKNOWN) lets apps show a fallback where sharing is unavailable; user cancellation is surfaced distinctly from a real failure.UI.triggerAfterfor deferred server-side work.UI.triggerAfter(Duration, SerializableRunnable)runs a task on the server after a browser-side timer elapses without enabling push; the returnedRegistrationcancels the client timer so a cancelled task never runs.ListSignal.insertAllFirst/insertAllLast/insertAllAt,SharedListSignalequivalents), helpers to read all items at once.Html(String, SerializableSupplier<Safelist>)(andInputStream/Signal<String>) constructors sanitize content through a jsoupSafelist, so untrusted HTML can be rendered safely without callers pre-sanitizing.DropEvent.getOffsetX()/getOffsetY(), drag-start offsets, extendedDragStartEvent/DragEndEvent) so an item can be placed where it was actually dropped.SessionLockListenerorRpcInvocationListeneronVaadinServiceto observe session-lock request/acquire/release and each client-to-server RPC invocation — useful for diagnosing lock contention and tracing which invocation holds the lock.UI.triggerAfter. It is intended as low level API to build higher level features on.Hilla
sourceClassesparameter (alongsidemainClass) to point endpoint discovery at specific classes, for projects where automatic scanning does not find the endpointsDesign System
AI-powered Charts and Grids (Pro)
New in existing components
setCollapseChips(true)).setFocusSelectedItem(true)), plus newscrollToIndex().setAcceptedMimeTypes(...)andsetAcceptedFileExtensions(...), with server-side enforcement onUploadManager.setTabFocusEnabled(false)to skip the popover in tab order.Now stable (was preview)
Copilot
See the Vaadin Copilot documentation.
Testing
Load testing with TestBench (Pro)
Turn existing TestBench (or Playwright) E2E tests into k6 load tests. The toolchain runs your test through a recording proxy, captures the traffic, and generates a k6 script that handles Vaadin specifics (JSESSIONID, CSRF/Hilla CSRF, UI/Push IDs, dynamic node IDs).
Highlights:
testbench-converter-plugin):k6:record,k6:convert,k6:run, plus start/stop-server mojos.📖 Docs · ⏯️
Example project
Browserless testing
Browserless tests gain:
withLabel/withAriaLabel), placeholder, test ID, or typed theme variant (withTheme(ThemeVariant)).find/findInViewmethods replacing the$/$viewDSL.sessions — no real device needed.
browserless-test-springmodule for spring support. (Migration guide)Breaking changes & upgrade notes
Security & framework defaults (Flow)
Anchor.setHref(...),IFrame.setSrc(...)andPage.open(...)now reject unsafe schemes (e.g.javascript:) withIllegalArgumentException. The allow-list is configurable via acom.vaadin.safeUrlSchemesparameter; escape hatchesAnchor.setUnsafeHref(...),IFrame.setUnsafeSrc(...)andPage.openUnsafe(...)bypass validation when you really need to.X-Frame-Options: SAMEORIGINsent by default — clickjacking protection is on by default. Applications embedded in frames on other origins must set theframeOptionsinit parameter to an empty value to disable the header.npm --before/pnpm --min-release-age). Projects that depend on freshly published packages must raise/lowernpm.minimumFrontendPackageAgeDays.@StyleSheetURLs resolve against the context root — a bare@StyleSheet("styles.css")now resolves to the servlet context root (implicitcontext://), fixing 404s under non-root servlet mappings. Apps that relied on the old servlet-path resolution will see changed URLs.Flow
vaadinPrepareFrontendno longer runs automatically in development — it is detached fromprocessResources, so IDE-triggered builds no longer regenerate/delete frontend files. Invoke the task explicitly if you relied on the implicit run.HasOrderedComponentsdeprecated (for removal in 26) —replace/indexOf/getComponentCount/getComponentAtare now available directly onHasComponents.vaadin.(deprecation).Components
Slider/RangeSliderare removed and replaced byIntegerSlider/IntegerRangeSlider(Integer values) andDecimalSlider/DecimalRangeSlider(Double values); the value type now governs min/max/step. Decimal slider theme-variant constants gained aDecimalprefix.ExpandingAreaAPI andMasterDetailLayoutVariantare removed; useexpandMaster/expandDetailflags and the newsetMasterSize/setDetailSizeoverloads (with anexpandflag and explicit overlay size).OverlayContainment.VIEWPORTis renamedPAGE; a detail-placeholder slot was added.MenuBar.setTooltipText(MenuItem, String)is deprecated (for removal in 26) in favor of per-itemsetTooltipTextand the new tooltip-awareaddItem(...)overloads.setAcceptedFileTypes(...)is deprecated in favor of separatesetAcceptedMimeTypes(...)/setAcceptedFileExtensions(...).Testing / Browserless
browserless-test-spring. Spring projects must change the dependency tobrowserless-test-spring$/$viewdeprecated in favor offind/findInView.SliderTester→DecimalSliderTester,RangeSliderTester→DecimalRangeSliderTesterQuarkus
quarkus.websocket.dispatch-to-worker=true, so inbound Push frames run on the Quarkus worker pool instead of the Vert.x event loop.Changelogs
Official add-ons and plugins:
Upgrading guides
Support
Vaadin 25 is the latest stable version, with extended support options available (release model).
Vaadin also provides commercial support and warranty.
Supported technologies
Any IDE or editor that works with the language of your choice should work well. Our teams often use IntelliJ, Eclipse, VS Code among others.
Vaadin IDE plugins (IntelliJ and VS Code) support the IDE versions released during the last 12 months
Vaadin Designer supports the following IDEs:
Eclipse from Photon and upwards
JetBrains IntelliJ IDEA from 2017 upwards
Vaadin Flow requires Java Servlet API 6.1 and Java 21 or newer. It is tested on:
Apache Tomcat 11
Open Liberty 23
RedHat JBoss EAP 8.1
WEB-INFfolder asjboss-deployment-structure.xmlWorkaround for supporting RedHat JBoss EAP 8.0
WildFly 36 +
WEB-INFfolder asjboss-deployment-structure.xmlWorkaround for supporting WildFly 36
Workaround for supporting WildFly 37+
Jetty 12
Payara Server 6
Payara Micro 6
Known issues and limitations
mvn vaadin:clean-frontentwhen upgrade your project from 25.1 to 25.2. One fix has been made to flowv25.1.8: Vaadin 25.1.8Compare Source
This is a maintenance release for Vaadin 25.1. See 25.1.0 release notes for details and resources.
Changes since 25.1.7
Unchanged Modules
v25.1.7: Vaadin 25.1.7Compare Source
This is a maintenance release for Vaadin 25.1. See 25.1.0 release notes for details and resources.
Changes since 25.1.6
Unchanged Modules
Note:
We are aware of the following CVEs (CVE-2026-43515, CVE-2026-43513, CVE-2026-43514, CVE-2026-42498, CVE-2026-41284, CVE-2026-43512, CVE-2026-41293) from Tomcat, which is a transitive dependency from SpringBoot 4.0.6. Tomcat is a runtime deployment choice made by application developers, which Vaadin does not use or depend on. You can be upgraded on the application side to Tomcat 9.0.118+, 10.1.55+ or 11.0.22+. The corresponding updates will come in their next releases (SpringBoot 4.0.7).
v25.1.6: Vaadin 25.1.6Compare Source
This is a maintenance release for Vaadin 25.1. See 25.1.0 release notes for details and resources.
Changelogs
Official add-ons and plugins:
Note:
We are aware of the following CVEs (CVE-2026-43515, CVE-2026-43513, CVE-2026-43514, CVE-2026-42498, CVE-2026-41284, CVE-2026-43512, CVE-2026-41293) from Tomcat, which is a transitive dependency from SpringBoot 4.0.6. Tomcat is a runtime deployment choice made by application developers, which Vaadin does not use or depend on. You can be upgraded on the application side to Tomcat 9.0.118+, 10.1.55+ or 11.0.22+. The corresponding updates will come in their next releases (SpringBoot 4.0.7).
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Mend Renovate.